<?php
/**
 * Created by PhpStorm.
 * User: xaq
 * Date: 2017/5/19
 * Time: 16:57
 */

namespace app\api\model;

use app\api\model\BaseModel;


class Product extends BaseModel
{
    protected $hidden = ['create_time','update_time','delete_time','pivot','from','category_id'];

    public function getMainImgUrlAttr($value,$data){
        return $this->prefixImgUrl($value,$data);
    }
    public function imgs() {
        return $this->hasMany('ProductImage','product_id','id');
    }
    public function properties() {
        return $this->hasMany('ProductProperty','product_id','id');
    }
    public static function getMostRecent($count){
        $products = self::limit($count)->order('create_time','desc')
            ->select();
        return $products;
    }
    public static function getProductsByCategoryID($categoryID) {
        $products = self::where('category_id','=',$categoryID)->select();
        return $products;
    }
    public static function getProductDetail($id) {
        //$product = self::with(['imgs.imgUrl'])
        //Query   执行嵌套查询，使用闭包函数
        $product =self::with([
            'imgs' => function($query){
            $query->with(['imgUrl'])->order('order','asc');
        }
        ])
        ->with(['properties'])
            ->find($id);
        return $product;
    }

}